package org.ws.task.listener.item;

import org.ws.task.model.protocol.PullItemRequest;
import org.ws.task.model.protocol.PullItemResponse;

/**
 * 项请求Listener
 */
public interface ItemFetchListener extends TaskItemListener {

    /**
     * 请求前
     * @param request
     */
    void beforeFetch(PullItemRequest request);

    /**
     * 请求后
     * @param request
     * @param response
     */
    void afterFetch(PullItemRequest request, PullItemResponse response);

    /**
     * 错误
     * @param request
     * @param e
     */
    void onFetchError(PullItemRequest request, Throwable e);
}
